From e424bff91b067e0d1e8eb8f8efa38f63c822c5b2 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 17 Jul 2015 18:00:47 +0100 Subject: [PATCH] xl: Command line: Adjust "Fix segfaults from `xl psr-cat-cbm-set`..." This adjust commit a49077e5 "Fix segfaults from `xl psr-cat-cbm-set` command line handling": * Do not use the constant `required_argument' here (we simply use 1 everywhere else). * Fix the minimum required arguments argument to SWITCH_FOREACH_OPT. Leave the separate check on optind, because it checks for too many as well as too few arguments. (There are many things in xl which fail to check for too many arguments. I do not intend to drain that swamp now: I started but decided a complete overhaul of most of xl's command line argument processing would be best.) This is just a code cleanup with no ultimate functional change. Signed-off-by: Ian Jackson CC: Chao Peng CC: Andrew Cooper Reviewed-by: Andrew Cooper Acked-by: Ian Campbell --- tools/libxl/xl_cmdimpl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index 8cbf30e1ba..4e97449b29 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -8431,7 +8431,7 @@ int main_psr_cat_cbm_set(int argc, char **argv) int i, j, len; static struct option opts[] = { - {"socket", required_argument, 0, 's'}, + {"socket", 1, 0, 's'}, COMMON_LONG_OPTS, {0, 0, 0, 0} }; @@ -8439,7 +8439,7 @@ int main_psr_cat_cbm_set(int argc, char **argv) libxl_socket_bitmap_alloc(ctx, &target_map, 0); libxl_bitmap_set_none(&target_map); - SWITCH_FOREACH_OPT(opt, "s:", opts, "psr-cat-cbm-set", 1) { + SWITCH_FOREACH_OPT(opt, "s:", opts, "psr-cat-cbm-set", 2) { case 's': trim(isspace, optarg, &value); split_string_into_string_list(value, ",", &socket_list); -- 2.30.2